function 浏览频道(){
    let cTime = time()
    //已经浏览过的
    let list = []
    click(text("更新").selected(false))
   随机停留时间(3,7);
    while (time() - cTime < 60 * 60 * 1000) {
        // if (has(desc("新的动态更新")) || has(text("更新").selected(true))) {
        //     break
        // }
        // if (has(desc("转到上一层级"))) {
        //     sleep(500);
        //     click(desc("转到上一层级"))
        //     sleep(1000);
        // }
        toast("打开动态列表");
        let node = id('com.whatsapp:id/conversations_row_content').getNodeInfo(2000)

        if(!node || !node.length){
            toast("列表暂无数据")
            随机停留时间(1,5)
        }else {
           node =  node.filter(item => list.indexOf(item.nid) === -1 )
            let cNode = node[random(0,node.length-1)]
            list.push(cNode.nid)
            clickPointBounds(cNode)
            toast("浏览朋友圈")
            随机停留时间(1,3)
            return
            // while(true){
            //     let iNode = id('com.whatsapp:id/control_btn').desc('下载').getOneNodeInfo(1000)
            //     if(iNode){
            //        clickPointBounds(iNode)
            //         随机停留时间(1,5)
            //
            //     }else{
            //
            //     }
            // }

        }



    }
}





function 随机回复好友(type,count){
    let node = 获取当前列表可回复的数据()

    if(!node.length){
        return
    }
    count = count || 1
    while(true){
        let clickCount = 0
        let 当前点击列表对象 =  {}
        if(!node.length){
            toast("已无可回复对象...");
            return
        }
        if(type === 好友回复类型.friend){
            if(clickCount >= count){
                return
            }
            
            //    获取内部好友数据
            node = node.filter(item => 好友检测(item.text.trim()))

        }else if(type === 好友回复类型.strange) {
            if(clickCount >= count){
                return
            }

            // 外部好友
            node = node.filter(item => !好友检测(item.text.trim()))


        }else {
            //    所有
        }

        //获取随机节点
        当前点击列表对象 = node[random(0,node.length - 1)]
//    点击随机节点,执行对话框
        clickPointBounds(ranNode)
        clickCount++
        //    将当前点击列表数据去除
        node = node.filter(item=>item.nid !== 当前点击列表对象.nid)
    //    开始回复数据

    }


}

function 随机动作1(){
    var one = [1,5]
    var two = [2,9,0]
    var three = [4,6]
    var four = [3,7,8]
    var num = 时间戳最后一位()
    if(one.indexOf(num) > -1){
        随机回复好友(好友回复类型.friend)
    }else if(two.indexOf(num)>-1){
        随机回复好友(好友回复类型.strange)
    }else if(three.indexOf(num)>-1){
        function w(){
            随机回复好友(好友回复类型.all)
        }
        像下滚动(2,null,w)
    }else {
        //回到主界面,聊天列表页面

        主界面随机停留(10,15)
    }

}


function  随机动作2(){
    var one = [2,3]
    var two = [1,4,5,7,8]
    var three = [6,9,0]
    var num = 时间戳最后一位()
    if(one.indexOf(num) > -1){
    //不做任何处理
    }else if(two.indexOf(num)>-1){
        主界面随机停留(50,60)
        随机回复好友(好友回复类型.all)
    }else {
        //回到主界面,聊天列表页面
        主界面随机停留(20,35)
    }
}


function  随机动作3_休息(){
    //todo休息时间
    let 休息时间 = 休息时间计算()

    let current = time()
    let 已经过去的时间 = 休息时间

    while(已经过去的时间 <= 休息时间){
        //已经过去的时间
        已经过去的时间 = time() - current
        let 触发1 = false
        let 触发2 = false
        let 触发3 = false

        if((2 / 3) * 休息时间 - 100<=已经过去的时间 <= (2 / 3) * 休息时间 + 100){
            if(触发1){
                continue
            }
            触发1 = true
            随机动作3_1()
        }else  if((1 / 2) * 休息时间 - 100<=已经过去的时间 <= (1 / 2) * 休息时间 + 100) {
            if(触发2){
                continue
            }
            触发2 = true
            随机动作3_2()
        }else if((1 / 3) * 休息时间 - 100<=已经过去的时间 <= (1 / 3) * 休息时间 + 100) {
            if(触发3){
                continue
            }
            触发3 = true
            随机动作3_1()
        }else {

        }
    }
    toast('结束脚本')
    exit()


}

function 随机动作3_1(){
    var one = [1,2,3,4,5,6]
    var two = [0,8]
    var three = [7,9]
    var num = 时间戳最后一位()
    if(one.indexOf(num) > -1){
        //无动作
    }else if(two.indexOf(num)>-1){
        主界面随机停留(1,5)
        浏览聊天记录()
    }else {
        主界面随机停留(1,5)
        随机回复好友(好友回复类型.all)
    }
}

function 随机动作3_2(){

    var one = [1,2,3,4,5]
    var num = 时间戳最后一位()
    if(one.indexOf(num) > -1){
        //无动作
    }else {
        主界面随机停留(1,5)
        // 随机回复好友(好友回复类型.friend)
    //    TODO: 好友互聊操作
    }
}


function 浏览聊天记录(){
 let node = 获取当前列表不可回复的数据()
 if(!node.length){
     return false
 }
    //随即浏览
    clickPointBounds(node[random(0,node.length - 1)])
    if(isScrollEnd("DOWN", el)){
        toast("已经到底部了.无需滚动")
        随机停留时间(2,5)
        back()
        return true
    }

    scrollForward(el)
    随机停留时间(2,5)
    back()

return true
}


function 发送话术(){}


function 群发2(){

    if(群发上限判定()){
        toast("群发已达上限,准备退出脚本");
        随机停留时间(1,5)
        exit()
        return
    }
    let str = file.readFile(群发记录文档)
    file.writeFile(群发记录文档,str)

    var one = [0,2,3,4,5,7,8]

    var num = 时间戳最后一位()
    if(one.indexOf(num) > -1){

        toast('未触发群发a2,写入a')
        // 随机回复好友(好友回复类型.friend)
        file.writeFile(群发记录文档,str += '2')
    }else {
        群发1()
    }
}



function 群发1(){



    if(群发上限判定()){
        toast("群发已达上限,准备退出脚本");
        随机停留时间(1,5)
        exit()
        return
    }

    if (!读取陌生人文件夹数据()) {
        return false
    }

    if(!去通讯录()){
        //todo:
        return false
    }else {
        let [文件日期,个数] = 获取私信文件信息()
        let str =  file.readFile(群发记录文档)
        if(通讯录跳转对话框()){
            file.writeFile(文件日期+'---'+(++个数))
            str += '1'
            file.deleteLine(陌生人文件名,1)
        }else {
            str += '0'
        }

        账号类型 == '新号' && file.writeFile(群发记录文档,str)
        currentPhone = ''
    }
    let str  = file.readFile(私信个数文件)

    if(发送话术()){
        toast('发送成功')
        home()
        随机停留时间(20,30)
    }



}
